SPB Git forge
3commits 1branches 0releases
417.0 KBsize
maindefault branch
10 days agolast push
TypeScript 66.5% Python 30.9% JavaScript 1.4% CSS 0.7%
780 B · 15 lines typescript
Raw Blame History
1import { SITEMAP_HEADERS, satelliteShardCount, shardEntries, toUrlset } from '@/components/meta/sitemap-data';23/** Sitemap shards: /sitemap/0.xml (static + entities), /sitemap/1.xml … /sitemap/N.xml (satellites, 5 000 per shard). Hourly revalidation. */4export const revalidate = 3600;56export async function GET(_req: Request, ctx: { params: Promise<{ shard: string }> }): Promise<Response> {7  const { shard: seg } = await ctx.params;8  const m = /^(\d+)\.xml$/.exec(seg);9  if (!m) return new Response('Not Found', { status: 404 });10  const shard = Number(m[1]);11  const shards = await satelliteShardCount();12  if (shard > shards) return new Response('Not Found', { status: 404 });13  return new Response(toUrlset(await shardEntries(shard)), { headers: SITEMAP_HEADERS });14}15